const $http = require('../../request/index');

Page({

  /**
   * 页面的初始数据
   */
  data: {
    score: "",
    correctNum: "",
    totalScore: "",
    // 正确答案的集合
    correctAnswer: [],
    answerList: "",
    // 动态绑定 确认按钮的提示信息 最后一题显示为提交
    lastQuestions: "上一题",
    nextQuestions: "下一题",
    // 该组卷的id 用于核对
    examId: "",
    // 看该试卷练习是否是 练习还是试卷
    type: "",
    // 第几题
    questionIndex: 0,
    // 共有几道题
    totalExamCount: 0,
    // 用户的选择集合
    userChoice: [],
    // 按钮是否可以点击 选下选项后为true  取消为false
    disable: false,
    // ----------------------------------------------------------
    // 题目集
    remessage: [],
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //如果type 存在的话说明是练习模式 查看练习的答案
    if (options.type) {
      console.log("11111111", options.type)
      this.setData({
        type: "test",
        examId: options.id
      })
      this.getPractiseDetail();
    } else {
      // 是从组卷选择的页面 带着id 跳转进来查看试卷答案的
      this.setData({
        type: "exams",
        examId: options.id
      })
      this.getQuestionDetail();
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },
  // 获取题目集
  getQuestionDetail() {
    // 查找试卷 答案 赋值
    $http.request("GET", `/front/exam/history/${this.data.examId}`, "").then(res => {
      let { data } = res.data;
      this.setData({
        totalExamCount: data.totalNum,
        answerList: data.questions,
        correctNum: data.correctNum,
        score: data.score,
        totalScore: data.totalScore,
      })
    })

    // 获取组卷信息  查找试卷详细 来拿到题目
    $http.request("GET", `/front/exam/${this.data.examId}`, "").then(res => {
      //   // 拿到组卷信息 进行异步调用后
      let { data } = res.data;
      this.setData({
        remessage: data.questions,
      })
      this.showAnswer();
    })
  },
  // 在每次按钮切换时 显示正确答案
  showAnswer() {
    // 当前问题的题号
    let currentIds = this.data.remessage[this.data.questionIndex].id;
    this.data.answerList.forEach(item => {
      // 题号和答案的题号相同 记录
      if (item.questionId == currentIds) {
        this.setData({
          userChoice: item.userAnswers,
          correctAnswer: item.correctAnswer
        })
        console.log("item", this.data.userChoice)
      }
    })
  },

  // 上一页
  previousPage(event) {
    let cnt = this.data.questionIndex;
    // 索引值-1
    cnt = cnt - 1;
    this.setData({
      questionIndex: cnt,
    })
    this.showAnswer();
  },
  // 下一页
  nextPage(event) {
    let cnt = this.data.questionIndex;
    // 索引值-1
    cnt = cnt + 1;
    this.setData({
      questionIndex: cnt,
    })
    this.showAnswer();
  },
  // 用于练习查看 
  getPractiseDetail() {
    // 读取上一次的信息
    let recordList = wx.getStorageSync("lastCheckAnswer");
    console.log("record", recordList)
    let ExamId = recordList.examId;
    let answerList = recordList.questions;
    // 获取组卷信息
    $http.request("GET", `/front/exam/${ExamId}`, "").then(res => {
      console.log("res", res)
      // 拿到组卷信息 进行异步调用后
      let { data } = res.data;
      this.setData({
        remessage: data.questions,
        answerList: answerList,
        totalExamCount: data.questions.length,
      })
      this.showAnswer();
    })
  },

  backToNav() {
    wx.navigateBack({
      delta: 1
    })
  }
})